Method and system for providing distinctive announcements in a SIP-based network

ABSTRACT

A system and method may include receiving a connection request including announcement information, the announcement information being associated with a distinctive announcement, and establishing a data session over a data network with a remote communication device based on the connection request. The system and method may further include mapping the announcement information to an alerting pattern, and generating an alerting signal for producing the alerting pattern.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application claims priority to U.S. Provisional PatentApplication No. 60/719,465, filed Sep. 22, 2005, which is herebyincorporated by reference herein in its entirety.

BACKGROUND INFORMATION

Session Initiation Protocol (SIP) is a call control signaling protocolfor Internet Protocol (IP) networks. SIP is designed to bedevice-agnostic—that is, it is intended to provide a highly flexiblecall signaling capability that is not tailored to the capabilities ofany particular device. Analog telephone signaling, on the other hand, isdevice-specific and highly constrained because of the historical legacyof the services delivered to the device. As a result, many call featuresavailable in traditional analog telephone devices are not easilyintegrated in a packet-switched and/or packet-based network such as aSIP-based network.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to facilitate a fuller understanding of the exemplaryembodiments of the present inventions, reference is now made to theappended drawings. These drawings should not be construed as limiting,but are intended to be exemplary only.

FIG. 1 is an exemplary SIP-based network system, according to anembodiment of the present invention.

FIG. 2 illustrates an exemplary implementation where a SIP Device isused in connection with a FTTP network, according to an embodiment ofthe present invention.

FIG. 3 illustrates an exemplary implementation where a SIP Device isembedded in an ATA device connected to an IP Network, according to anembodiment of the present invention.

FIG. 4 illustrates an exemplary embodiment of various modules includedin a SIP User Agent, according to an embodiment of the presentinvention.

FIG. 5 illustrates an exemplary processing table, according to anembodiment of the present invention.

FIG. 6 illustrates an exemplary processing table for mappingannouncement information to an alerting pattern, according to anembodiment of the present invention.

FIG. 7 illustrates various exemplary patterns of alerting signalsgenerated by a generating module, according to an embodiment of thepresent invention.

FIG. 8 is an exemplary flow diagram of processing performed at a SIPUser Agent to generate an alerting signal for a User Interface,according to an embodiment of the present invention.

FIG. 9 is an exemplary flow diagram of mapping announcement informationto an alerting pattern, according to an embodiment of the presentinvention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

A system and process of an exemplary embodiment of the present inventionprovides receiving a connection request including announcementinformation, the announcement information being associated with adistinctive announcement, and establishing a data session over a datanetwork with a remote communication device based on the connectionrequest. The system and method may further provide mapping theannouncement information to an alerting pattern, and generating analerting signal for producing the alerting pattern.

A module as used herein may refer to hardware, software, firmware,and/or combinations thereof.

FIG. 1 is an exemplary SIP-based network system, according to anembodiment of the present invention. System 100 illustrates an exemplarysystem for supporting SIP communication, in particular, for generating adistinctive announcement, such as distinctive ringing, to inform a userabout an established data session. As illustrated, SIP Device 110 may becoupled to User Interface 114. SIP Device 110 may include a SIP UserAgent 112 for communicating across IP Network 120 to a SIP Server 122.SIP Server 122 may provide communication to other SIP devices, as shownby SIP Element 130 and SIP element 132, through IP Network 124. Thevarious components of system 100 may be further duplicated, combinedand/or integrated to support various applications and platforms.Additional elements may also be implemented in the system to supportvarious applications. A SIP-based network may also include an IPnetwork, packet switched based network or other type of network. Theelements referred to in the Figures may include other network or packetswitched based elements. For example, the elements referred to as “SIP”may include other network devices, elements, components, etc.

SIP Device 110 may represent a device that manages User Interface 114.User Interface 114 may include a traditional telephone and other datacommunication device using voiceband or other signaling, including butnot limited to data modems, facsimile devices, teletype (TTY) equipment,etc. User Interface 114 also may include an announcement device 116 forproviding a distinctive announcement. The announcement device 116 mayinclude a sound generator device (e.g., a speaker), a ring generator, alight-emitting device (e.g., a light emitting diode, a light bulb,etc.), a vibrating unit, a display screen for visually displaying amessage or video, other announcement devices, and/or combinationsthereof.

SIP Device 110 may contain SIP User Agent 112. SIP User Agent 112 may beintegrated with SIP Device 110 or remote from SIP Device 110. SIP UserAgent 112 may perform interworking between SIP signaling and userinterface actions. For example, SIP User Agent 112 may manage anexchange of media (e.g., audio, etc.) between User Interface 114 and aReal Time Protocol (RTP) media stream of a media session set up by theSIP signaling. SIP Device 110 may originate calls to and receive callsfrom other users. SIP Device 110 may communicate through IP Network 120to SIP Server 122.

SIP Server 122 may represent a SIP proxy or application server that actson behalf of SIP Device 110. For example, SIP Server 122 may manage aSIP Address of Record (AOR) on behalf of SIP Device 110. SIP Device 110may register with SIP Server 122 and send SIP signaling through SIPServer 122 to other SIP elements, such as SIP Element 130 and SIPElement 132. For example, a call to the SIP AOR may be delivered to SIPServer 122, which in turn delivers the call to SIP Device 110. SIPServer 122 may perform some service on behalf of SIP Device 110, or maysimply forward SIP messages to and from SIP Device 110. SIP Device 110communicates through IP Network 124 to SIP Element 130 and/or SIPElement 132.

SIP Element 130 and SIP Element 132 may represent users with which theuser of SIP Device 110 communicates. SIP Element may be a SIP Device,SIP Server, and/or other SIP enabled device. In addition, SIP Elementmay also represent a PSTN device that may be reached by a gateway that,directly or indirectly, acts as a SIP User Agent.

FIGS. 2 and 3 show exemplary implementations of a SIP Device. FIG. 2illustrates an exemplary implementation where a SIP Device is used inconnection with a Fiber-to-the-Premises (FTTP) network, according to anembodiment of the present invention. FIG. 3 illustrates an exemplaryimplementation where a SIP Device is embedded in an Analog TelephoneAdapter (ATA) which is used in connection with a traditional (e.g.,electrical) IP-enabled access network, according to an embodiment of thepresent invention. Other implementations with other devices and/ornetworks may also be realized.

As shown in FIG. 2, User Interface 114 may be connected to SIP Device110. SIP Device 110 may be embedded in Optical Network Terminal (ONT)210 or otherwise integrated. ONT 210 may be connected to an Optical LineTerminal (OLT) 230 via a Passive Optical Network (PON) 220 acting as anaccess network for communications between ONTs 210 and OLTs 230.According to an exemplary application, OLT 230 may be located at aCentral Office. ONT 210 may be connected over PON 220 to the OLT 230,which in turn passes that connection through transport IP network 120 toSIP Server 122. According to an exemplary application, OLT 230 maymaintain an IP connection between SIP Device 110 on the ONT 210 and thetransport IP network 120. In this exemplary application, the OLT 230 maynot process SIP signaling, but rather allows SIP signaling to passthrough to its destination.

FIG. 3 illustrates SIP Device 110 embedded in an Analog TelephoneAdapter (ATA) 310 in a home or other location that subscribes to abroadband service delivered via an access network, such as DSL or cablemodem service. The ATA device may be attached to a network, such as abroadband data network, IP network and/or other network. User Interface114 may be connected to SIP Device 110. ATA 310 may be connected toBroadband Router 320, which in turn may be connected to a DSL or cablemodem 330, which in turn may be connected to access network 340. Accessnetwork 340 may provide connectivity to transport IP network 120 throughwhich the SIP Device 110 may communicate with SIP Server 122. In oneexample, as shown in FIG. 3, data multiplexer (MUX) 350 may provide apoint of connection for transmissions between access network 340 and thetransport IP network 120.

The various components of systems 200 and 300 as shown in FIGS. 2 and 3may be further duplicated, combined and/or integrated to support variousapplications and platforms. Additional elements may also be implementedin the systems described above to support various applications.

One calling service available in telephony networks, such as PSTN, isdistinctive ringing that may inform a called party about an availablecall. Distinctive ringing also permits a called party to identifyparticular information associated with the call. In SIP INVITE messages,the SIP standard describes including a uniform resource identifier (URI)in an Alert-Info field. The URI may identify a server for obtainingaudio information that provides multi-tonal distinctive ringing at thedevice. Conventional analog phone interfaces, however, often do notsupport multi-tonal audio. Exemplary embodiments of the presentinvention overcome these and other problems.

During establishment, communication, and termination of data sessionsover the IP Networks 120 and 124, the SIP Device 110 may be a gatewaydevice for communicating with the User Interface 114 and with the SIPServer 122. Data sessions may be SIP dialogs, for example. When alsocommunicating with the SIP Device 130, for example, the SIP Device 110may receive analog signals from the User Interface 114, convert theanalog signals to a form suitable for transport over the IP Networks 120and 124 (e.g., digital data, such as IP packets, etc.), and may convertdigital data received from the IP Networks 120 and 124 to analog signalsuseable by the User Interface 114. For example, the SIP User Agent 112may be a component in a Voice over W (VoIP) system.

FIG. 4 illustrates various modules included in the SIP User Agent 112for receiving and processing connection requests received from the SIPServer 122. In an exemplary embodiment, the SIP User Agent 112 mayinclude a connection module 402, a capabilities module 404, a processingmodule 406, and a generating module 408. It is noted that the modules402-408 are exemplary. Other modules may be included in the SIP UserAgent 112. In addition, the modules 402-408 may be combined, integrated,and/or duplicated to support various applications. Further, the modules402-408 may be implemented across multiple User Agents and/or othercomponents.

The capabilities module 404 may generate capabilities information basedon the capabilities of the announcement device 116 of the User Interface114. The capabilities information may identify what sounds, frequencies,amplitudes, light patterns, vibration patterns, text, audio, video,etc., may be produced by the announcement device 116. The capabilitiesinformation also may identify whether the User Interface 114 may receivein-session alerting signals or out-of-session alerting signals. The UserInterface 114 may receive in-session alerting signals when receivinganalog signals, such as, but not limited to, telephony signals, from theSIP Device 110 from a previously established data session, and mayreceive the out-of-session alerting signals when a previous data sessionhas not been established. For example, the out-of-session alertingsignals may be used when a telephone receiver of the User Interface 114is “on-hook,” and the in-session alerting signals may be used when atelephone receiver is “off-hook.” In-session alerting signals mayinclude voice-band signals, for example. In an exemplary VoIPembodiment, the in-session alerting signals may be a call waitingalerting signal to inform the user about a new call.

The User Interface 114 may receive out-of-session alerting signals whennot receiving analog signals from the SIP Device 110 from a previouslyestablished data session. For example, receiving the out-of-sessionalerting signals may cause the announcement device 116 to generate: atone at a single amplitude and at a single frequency, a tone at multiplefrequencies and at a single amplitude, a tone at multiple frequenciesand at multiple amplitudes, music, a vibration, a visual message, lightemitted continuously or in a pattern, video, audio, text, ringing (e.g.,from a metal bell), etc., and/or combinations thereof.

To determine the capabilities information, the capabilities module 404may instruct the generating module 408 to generate various analogsignals for interacting with the announcement device 116 of the UserInterface 114. Based on a response and/or lack of response received fromthe User Interface 114, the capabilities module 404 may generatecapabilities information identifying the capabilities of theannouncement device 116. Additionally, the capabilities module 404 mayindicate in the capabilities information whether the connection module402 is involved with another data session when the connection request isreceived.

For example, the capabilities module 404 may instruct the generatingmodule 404 to produce one or more analog signals for interacting withthe User Interface 114. Receiving the analog signals may or may notcause the User Interface 114 generate a response analog signal,depending on the capabilities of the User Interface 114. If thecapabilities module 404 does not receive a response signal, thecapabilities module 404 may indicate that the announcement device 116 ofthe User Interface 114 may generate a tone at a single amplitude and ata single frequency (e.g., conventional power ringing). Also, as adefault, the capabilities module 404 may indicate that the announcementdevice 116 of the User Interface 114 may generate a tone at a singleamplitude and at a single frequency as a default without producing anyanalog signals for interacting with the User Interface 114.

In a second example, receiving the analog signal from the SIP Device 110may cause the User Interface 114 to respond with an analog signalrepresenting a response code. For example, receiving the analog signalmay activate a transmitter of the User Interface 114 that transmits asequence of one or more coded signals. The coded signal may be Dual ToneMulti-Frequency (DTMF) signals or pulse dialing signals, for example.The coded signal may correspond to one or more capabilities of theannouncement device 116. For example, the sequence 101 may indicate thatthe announcement device 116 may generate multi-tonal audio (e.g., thefirst “1” of the sequence 101), may not vibrate (e.g., the 0 of thesequence 101), and may emit light (e.g., the second “1” of the sequence101). The sequence also may be transmitted as the DTMF signal for thedigit 5, which represents the sequence 101 in binary. Coded signals maybe used to represent other capabilities, such as the ability to playmusic, video, display text, emit light, etc. Also, a user of the UserInterface 114 may manually input the response code by pressing a digiton a telephone keypad, for example. Once the response code is received,the capabilities module 404 may include the corresponding capabilitiesin the capabilities information.

After determining the capabilities information, the connection module402 may process connection requests received from the SIP Server 122 andmay use the connection requests to establish a data session. Forexample, the SIP Element 130 may send a connection request to the SIPServer 122 to establish a data session between the SIP Device 110 andthe SIP Element 130 to exchange VoIP packets over the IP Networks 120and 124 with the User Interface 114. Once a connection request isreceived, the connection module 402 may interact with the SIP Server 122and the requesting device (e.g., SIP Element 130) to establish a datasession with the requesting device.

The connection request may contain announcement information useable bythe announcement device 116 to generate a distinctive announcement toinform the user of the User Interface 114 about the established datasession. In an exemplary embodiment, the SIP Element 130 may identify adistinctive announcement for uniquely alerting the user of the UserInterface 114 about the established data session. The distinctiveannouncement may be a ringing pattern, a light emission pattern, avibration pattern, an audio message, a text message, a video message, arecorded voice announcement from the calling party, etc., combinationsthereof, and/or other manners for a person or device to uniquelyannounce the established data session.

The distinctive announcement may provide the user of the User Interface114 with information about the calling party, the called party, or othertypes of information about the data session. For example, thedistinctive announcement may indicate that the data session is a longdistance VoIP call, an emergency call (e.g., a family emergency), a callfor a particular caller (e.g., group of callers each having a uniqueringing pattern), a call from a particular caller (e.g., family memberseach may be assigned a unique ringing pattern), a call from a caller whohas blocked sending caller ID information, etc.

The SIP Element 130 may forward the announcement information in aconnection request to the SIP Server 122, and the SIP Server 122 mayinclude the announcement information in a connection request to the SIPUser Agent 112. For example, the SIP Server 122 may include in theannouncement information a value corresponding to the distinctiveannouncement in an Alert-info field of a SIP INVITE message. The valuemay be a Uniform Resource Identifier (URI). The value also may be anumber useable to identify one of several distinctive announcements. Thevalue may be used to instruct the SIP User Agent 112 to generate aparticular alerting signal useable by the announcement device 116 toalert the user about the established data session. Receiving thealerting signal may cause the announcement device 116 to generate acontinuous tone, a pattern of tones at a single frequency, a tone atmultiple frequencies, a pattern of tones at multiple frequencies, music,other audible signals, a vibration, a text message, music, video, alight pattern, a call waiting signal, etc., and/or combinations thereof.

The announcement information also may identify standard alertingpatterns, such as, but not limited to, the power ringing and standardalerting patterns identified in “Signaling for Analog Interfaces,”GR-506-CORE, Telecordia Technologies, Issue 1, June 1996, the contentsof which is incorporated herein by reference in its entirety. Theannouncement information also may be associated with other standards,and may be specified by the user of the User Interface 114, a user ofthe SIP Elements 130 or 132, the SIP Server 122, a telecommunicationsprovider, a government entity, etc., other devices communicativelycoupled to the IP Networks 120 and 124, and/or combinations thereof.

Before generating the alerting signal, the connection module 402 mayforward the connection request to the processing module 406 forprocessing. The processing module 406 may process the connection requestto determine whether the announcement device 116 of the User Interface114 may properly generate a distinctive announcement as indicated in theannouncement information. The processing module 406 may generateprocessed announcement information upon determining whether to modifythe announcement information based on capabilities information of theannouncement device 116.

If the capabilities information indicates that the announcement device116 may generate the type of distinctive announcement identified by theannouncement information, the processing module 406 may not modify theannouncement information. Thus, the processed announcement informationmay identify the same distinctive announcement as identified in theannouncement information of the connection request. If the capabilitiesinformation indicates that the announcement device 116 may not generatethe distinctive announcement identified in the announcement information,the processing module 406 may modify the announcement information byreplacing the announcement information with a different announcementinformation that may be produced by the announcement device 116 or bymapping the announcement information to an alerting pattern that maydiffer from the announcement information.

For example, if the capabilities information indicates that theannouncement device 116 of the User Interface 114 may produce a singlefrequency audio tone at a single amplitude, and if the announcementinformation identifies a multi-frequency multi-tonal pattern at variousamplitudes, then the processing module 406 may replace the announcementinformation with new announcement information that may identify analerting pattern of a single frequency audio tone at a single amplitude.In a second example, if the capabilities information indicates that theUser Interface 114 may produce a multi-frequency multi-tonal pattern andif the announcement information identifies a multi-frequency multi-tonalpattern, then the processing module 406 may not modify the announcementinformation since the capabilities information indicates that theannouncement device 116 may generate the identified multi-frequencymulti-tonal pattern. In a third example, if the capabilities informationindicates that the User Interface 114 may produce a single frequencyaudio tone at a single amplitude and if the announcement informationidentifies a vibration pattern, then the processing module 406 mayreplace the announcement information with a new announcement informationidentifying an alerting pattern of a single frequency audio tone at asingle amplitude. Other permutations and modifications also may be madeto the announcement information based on the capabilities information.

FIG. 5 illustrates an exemplary embodiment of a processing table 500depicting relationships between the received announcement informationand the processed announcement information. The processing table 500 mayillustrate what modification occurs, if any, to the announcementinformation included in the connection request during processing by theprocessing module 406. In an exemplary embodiment, the processing table500 may include two columns, where a first column 502 may include theannouncement information included in the connection request asidentified by the processing module 406, and a second column 504 mayinclude the processed announcement information as generated by theprocessing module 406 after processing the received announcementinformation based on the capabilities information.

The first column 502 may represent various types of announcementinformation identified in the connection request by the processingmodule 406. In an exemplary embodiment, the announcement information mayidentify location for retrieving a data file of: audio (e.g., music,calling party's recorded voice announcement, etc.); a ringing pattern(e.g., long short long, long long short, etc.); text; video; avibrational pattern; a light-emission pattern; etc.; other patterns;and/or combinations thereof. For example, the announcement informationmay include a uniform resource identifier (URI) identifying the SIPServer 122 and the data file. The URI also may identify other servers(not shown) over the IP Network 120 and/or the IP Network 124.Additionally, the announcement information may indicate that the datafile for generating the distinctive announcement is included in theconnection request or that the announcement information includes thedistinctive announcement, and may not require accessing a server. Also,the SIP Device 110 may store data files for generating distinctiveannouncements based on standardized or previously obtained distinctiveannouncements.

In the exemplary embodiment depicted in FIG. 5, the announcementinformation in the first column 502 may identify a data file of: asingle frequency pattern of tones P1; a multi-tonal pattern of tones Pm;an audio file/video file; a vibration pattern P4; a light emissionpattern P5; and a none/default/unrecognized file. The processing module406 may determine that the announcement information isnone/default/unrecognized file if unable to identify a distinctiveannouncement identified in the announcement information, if theconnection request does not include announcement information, or if theannouncement information may not be placed in any other category. Theannouncement information also may identify or include other types ofpatterns not specified in FIG. 5.

The second column 504 may include processed announcement information, asrepresented by P1 p-P6 p. The processing module 406 may generate theprocessed announcement information based on the capabilitiesinformation. The processed announcement information may be used toinstruct the generating module 408 to generate an alerting signal. Theprocessed announcement information also may specify whether the alertingsignal is an in-session alerting signal or an out-of-session alertingsignal. The processed announcement information may identify the samedistinctive announcement as identified in the announcement information,or may be a modification to the announcement information if theannouncement device 116 is unable to generate the identified distinctiveannouncement or if a previous data session has been established.

In an exemplary embodiment, if the capabilities information indicatesthat the announcement device 116 may produce an audible sound at asingle frequency and at a single amplitude, and may not produce anyvibrations, multi-tonal sounds, or light patterns, the processing module406 may modify any announcement information that does not identify anaudible sound at a single frequency and at a single amplitude. When theannouncement information identifies a non-single frequency distinctiveannouncement, such as music or multi-frequency patterns, the processingmodule 406 may modify the announcement information.

Even if the announcement device 116 may produce the distinctiveannouncement, the processing module 406 may modify the announcementinformation. For example, the processing module 406 may modify theannouncement information when the connection module 402 indicates that aprevious data session has been established. Thus, the processing module406 may generate processed announcement information that may use astandard in-session alerting signal, such as, but not limited to, a callwaiting alert, when a previous data session has been established. Also,when a previous data session has been established, the processing module406 may not modify the announcement information. For example, theprocessing module 406 may instruct the generating module 408 to includean in-session alerting signal based on the distinctive announcement inaddition to analog signals associated with the previous data session.The in-session alerting signal may be based on an audio file (or otherdata files) and may be include a repeating voice message from thecalling party that is added to analog signals associated with theprevious data session sent from the SIP Device 110 to the User Interface114, for example. Thus, a user may hear a spoken message as anin-session alerting signal from a second caller when talking with afirst caller, for example. In-session alerting also may cause the UserInterface 114 to vibrate, emit a lighting pattern, produce a ringingpattern, display a text message, etc.

An exemplary embodiment of processing announcement information based oncapabilities information indicating that the announcement device 116 mayproduce a single frequency audible tone at a single amplitude may bediscussed with relation to FIG. 5. For example, the processing module406 may not modify the announcement information identifying the singlefrequency pattern P1 during processing and may use the single frequencypattern P1 for generating the alerting signal (See processing table 500,FIG. 5). The single frequency pattern P1 may be associated with a callfrom a particular caller, a long distance call, a call for a particularperson, etc. Thus, the pattern P1 identified in the announcementinformation may be the same as the pattern P1 p identified in theprocessed announcement information (See FIG. 5). Hence, the processingmodule 406 may not modify the announcement information if thedistinctive announcement may be produced at the announcement device 116.

FIG. 5 also depicts announcement information identifying a multi-tonalpattern Pm. The processing module 406 may replace the announcementinformation identifying the multi-tonal pattern Pm with the a singlefrequency pattern P2 in the processed announcement information based onthe capabilities information. The multi-tonal pattern Pm may represent acall from a particular caller, a long distance call, a call for aparticular person, etc., and the single frequency pattern P2 may be asingle frequency tone pattern corresponding to a particular caller, along distance call, a call for a particular person, etc. Hence, thesingle frequency pattern p2 may represent the same information (e.g.,call from a particular caller, etc.) as the multi-tonal pattern Pm usinga single tone frequency. The processing module 406 may instruct thegenerating module 408 to generate an alerting signal based on thepattern P2, which may be stored locally at the SIP User Agent 112, ormay be obtained from a server. The processing module 406 may similarlymodify announcement information identifying an audio file, a video file,a light emission pattern, a vibration pattern, a text message, etc.

If the connection request does not include announcement information, ifthe announcement information does not fall within a recognized categoryin the processing table 500, or if the processing module 406 does notrecognize the distinctive announcement identified by the announcementinformation, the processing module 406 may use the announcementinformation identifying pattern P6 p as a default, for example.Additionally, it is noted that the processing table 500 is exemplary.Other entries in the columns and rows may be used, and the processingtable 500 may include any desired number of columns and rows. Theprinciples described in FIG. 5 also may be applied to situations wherethe User Interface 114 may be capable of generating multi-tonal, music,vibrations, light, video, text, audio, etc.

After the processing module 406 generates the processed announcementinformation, the generating module 408 may generate an alerting signalfor the User Interface 114 based on the processed announcementinformation. In an exemplary embodiment, when a previous data sessionhas not been established, the out-of-session alerting signal may includean analog signal useable by the announcement device 116 to generate anaudible sound, to generate a visual message, to emit light continuouslyor in a pattern, to vibrate the User Interface 114, to generate music,to generate video, and/or combinations thereof. When a previous datasession has been established, the in-session alerting signal may be acall alerting signal, for example. The in-session alerting signal alsomay include music, a recorded message, a light pattern, a vibration,etc.

In an exemplary embodiment, the alerting signal may be a repeatingpattern of a constant voltage in a first time interval followed by azero voltage in a second time interval. When no other data session hasbeen established, this alerting signal may cause the announcement device116 of the User Interface 114 to alternately generate an audible soundduring the constant voltage time interval followed by no sound duringthe zero voltage time interval. When another data session has beenestablished, this alerting signal may cause the User Interface 114 toalternately generate an audible sound in a receiver of the UserInterface 114 during the constant voltage time interval followed by nosound during the zero voltage time interval, for example. For example,the in-session alerting signal may be a call waiting alert playable at aspeaker in a telephone receiver of the User Interface 114 to alert theuser about another call. Other alerting signals may be generated andaudible and/or visual alerts may be generated at devices other than theannouncement device 116 or the telephone receiver.

FIG. 6 illustrates an exemplary processing table 600 for mappingannouncement information identifying a distinctive announcement to analerting pattern that may be the same as or may differ from thedistinctive announcement, according to an exemplary embodiment of thepresent invention. The processing table 600 may associate announcementinformation received either as a URI or a pattern number with anout-of-session alerting signal or an in-session alerting signal. Theprocessing table 600 may include a pattern number column 602, a URIcolumn 604, a power ringing pattern column 606, and a call waiting alertpattern column 608. The announcement information may include datacorresponding to an entry in either the pattern number column 602, theURI column 604, or both. The pattern number column 602 may identify adistinctive announcement, which may be stored locally at the SIP Device110. If the SIP Device 110 does not have a stored copy of thedistinctive announcement, the SIP Device 110 may use a URI in the URIcolumn 604 to obtain the distinctive announcement from a server, forexample. For the entry corresponding to pattern number 1 in the patternnumber column 602, the corresponding URI may behttp://127.0.0.1/standardring. Pattern number 1 may represent a standardring of a single frequency tone at a single amplitude. Pattern numbers2-11 in FIG. 6 may represent multi-tonal frequency patterns, splashrings, or other known ring tones.

For out-of-session alerting, as identified in the power ringing patterncolumn 606, the alerting pattern corresponding to pattern number 1 mayring for 2 seconds (s), and may not send any signal for causing a ringin the following 2 s. Thereafter, the out-of-session alerting patternbased on pattern number 1 may repeat. For in-session alerting, asidentified in the call waiting alerting pattern column 608, alertingpattern corresponding to the pattern number 1 may provide a call waitingalert for 0.3 s, and may not send any signal for causing a call waitingalert in the following 0.3 s. The call waiting alert may be an analogsignal for generating a 440 hertz (Hz) tone at a receiver of a telephoneat the User Interface 114, for example. Thereafter, the in-sessionalerting based on pattern number 1 may repeat. The remaining columns ofthe processing table 600 for pattern numbers 2-11 include similar data.

It is noted that processing table 600 is exemplary, and may be modifiedor altered to include other types of information, such as other types ofURIs, power ringing patterns, call waiting alerts, and pattern numbers.Also, the processing table 600 may override the announcement informationand may map the announcement information to an alerting pattern based ona caller identification, a called party, a long distance call, etc.

FIG. 7 illustrates various exemplary patterns P1-P4 representingalerting signals generated by the generating module 408 based onpatterns identified or included in the announcement information. Over aperiod of time T, the patterns P1-P4 may switch between zero volts and+V volts. In P1, the generating module 408 may generate an alertingsignal having a voltage of +V volts in time intervals t1 and t2 and maynot generate a voltage for the remainder of the period T. In thisexample, time interval t1 may be the same length as time interval t2. InP2, time interval t1 is smaller than time interval t2. In P3, thegenerating module 408 may generate an alerting signal having a voltageof +V volts in time intervals t1, t2, and t3, and may not generate apositive voltage for the remainder of the period T. Time intervals t1,t2, and t3 in P3 all may be different lengths of time. In P4, timeinterval t1 may occur during the whole time period T, and hence theannouncement device 116 may produce a constant ring, for example. Theannouncement device 116 of the User Interface 114 may receive and maygenerate an audible tone based on patterns P1-P4. Patterns P1-P4 alsomay include varying voltages and varying frequencies, which are omittedfor brevity. Other patterns also may be used. Additionally, the patternsP1-P4 may represent other types of analog signals, such as voicesignals, audio, video, text, etc.

FIG. 8 illustrates an exemplary flow diagram illustrating operationsperformed at the SIP User Agent 112 to process a connection request forestablishing a data session and for generating an alerting signal. Theflow diagram 800 may begin at 802 and may continue to 804.

In 804, the capabilities module 404 may interact with the User Interface114 to determine capabilities information identifying the capabilitiesof the announcement device 116 of the User Interface 114. Also, thecapabilities module 404 may not interact with the User Interface 114 andmay set the capabilities information as a default. The defaultcapabilities information may indicate that the announcement device 116may produce a single tone frequency at a single amplitude, which may bestandard on conventional telephones.

In 806, the connection module 402 may receive a connection requestincluding announcement information. The connection module 402 also mayidentify whether the connection module 402 has established a previousdata session. For example, the connection module 402 may determine thata previous data session has been established with SIP Element 132 andthat the connection request is from SIP Element 130. The connectionmodule 402 may forward indication information to the capabilities module404 indicating whether the connection module 402 has established aprevious data session for updating the capabilities information. Theindication information also may be separate from the capabilitiesinformation.

In 808, the connection module 402 may establish a data session based onthe connection request. For example, the connection module 402 maycommunicate with the SIP Server 122 and/or the requesting device (e.g.,SIP Element 130) to establish a data session with the requesting device.The connection module 402 also may indicate if a data session may not beestablished based on the connection request. For example, the connectionmodule 402 may transmit a failure message to the SIP Server 122 and/orthe SIP Element 130 if unable to establish a data session with the SIPElement 130, for example.

In 810, the processing module 406 may process the connection request togenerate processed announcement information. The processed announcementinformation may identify or include the same announcement information asthe announcement information, or may be a modification of theannouncement information based on the capabilities information. Theprocessing module 406 may obtain a data file from the SIP Server 122identified in the announcement information, a data file stored locallyat the SIP Device 110 identified in the announcement information, or mayobtain a data file included in the announcement information.

In 812, the generating module 408 may generate an alerting signal basedon the processed announcement information. The alerting signal may be anin-session alerting signal or an out-of-session alerting signal. Thegenerating module 408 may then transmit the alerting signal to theannouncement device 116 of the User Interface 114 for generating thedistinctive announcement, which may be an audible sound, a visualindicator (e.g., light or a message), a vibration, a call waitingalerting signal, etc., and/or combinations thereof, for example. Theflow diagram 800 may continue to 814 and end.

FIG. 9 illustrates an exemplary flow diagram for mapping announcementinformation received in a connection request to an alerting pattern,according to an exemplary embodiment of the present invention. The flowdiagram 900 may begin at 902 and may continue to 904.

In 904, the connection module 402 may receive a connection requestincluding announcement information. The announcement information may beassociated with a distinctive announcement, such as a data file ofaudio, video, text, etc., a vibration pattern, a light emission pattern,a multi-tonal ringing pattern, and/or combinations thereof.

In 906, the connection module 402 may establish a data session based onthe connection request over the IP Networks 120 and 124 with the SIPElement 130, for example.

In 908, the processing module 406 may map the announcement informationto an alerting pattern, which may differ from the distinctiveannouncement. For example, the announcement information may include aURI from URI column 602, and the processing module 406 may map theannouncement information to the corresponding alerting pattern. Thedistinctive announcement identified by the announcement information maybe a data file of music, and the alerting pattern may correspond to aringing pattern for generating a single tone frequency during particulartime intervals at the User Interface 114, for example. The processingmodule 406 also may query the connection module 402 to determine whethera previous data session has been established.

In 910, the processing module 406 may instruct the generating module 408to generate an alerting signal based on the alerting pattern. Thealerting signal may be an in-session alerting signal or anout-of-session alerting signal based on whether a previous data sessionhas been established. The generating module 408 may then transmit thealerting signal to the announcement device 116 of the User Interface 114for generating the alerting pattern, which may be a ringing pattern thatmay cause a ringer of a telephone to ring during intervals specified incolumns 606 or 608 of FIG. 6, for example. The flow diagram 900 maycontinue to 914 and end.

As described above, the SIP User Agent may receive announcementinformation included in a connection request, and may process theannouncement information to provide an alerting signal for a UserInterface.

In the preceding specification, various preferred embodiments have beendescribed with reference to the accompanying drawings. It will, however,be evident that various modifications and changes may be made thereto,and additional embodiments may be implemented, without departing fromthe broader scope of the invention as set forth in the claims thatfollow. The specification and drawings are accordingly to be regarded inan illustrative rather than restrictive sense.

The invention claimed is:
 1. A method comprising: generatingcapabilities information that indicates one or more capabilities of anannouncement device to output announcement information that comprises adistinctive announcement, wherein the announcement device iscommunicatively coupled to a remote communication device; receiving aconnection request comprising the announcement information, theannouncement information being associated with the distinctiveannouncement; establishing a data session over a data network with theremote communication device based on the connection request; mapping theannouncement information to an alerting pattern based on at least thegenerated capabilities information; and generating an alerting signalfor producing the alerting pattern.
 2. The method of claim 1, whereinthe connection request comprises a SIP INVITE message having aAlert-info header field, and wherein the Alert-info header fieldcomprises the announcement information.
 3. The method of claim 1,wherein the announcement information comprises a uniform resourceidentifier (URI) or a pattern number.
 4. The method of claim 1, whereinthe announcement information identifies a location of a data file. 5.The method of claim 1, wherein the alerting signal comprises anin-session alerting signal.
 6. The method of claim 5, wherein thein-session alerting signal comprises a call waiting alerting signal. 7.The method of claim 1, wherein the alerting signal comprises anout-of-session alerting signal.
 8. The method of claim 1, wherein thealerting pattern identifies a ringing pattern.
 9. The method of claim 1,further comprising determining that a previous data session has beenestablished.
 10. The method of claim 9, wherein the alerting signalcomprises an in-session alerting signal.
 11. The method of claim 1,further comprising determining that a previous data session has not beenestablished.
 12. The method of claim 11, wherein the alerting signalcomprises an out-of-session alerting signal.
 13. The method of claim 1,wherein the announcement information identifies a data file, amulti-tonal frequency pattern, a vibration pattern, or a light-emissionpattern.
 14. The method of claim 1, wherein the alerting pattern differsfrom the distinctive announcement.
 15. A non-transitory computerreadable media comprising code to perform the acts of the method ofclaim
 1. 16. A system comprising: a capabilities computing apparatus togenerate capabilities information that indicates one or morecapabilities of an announcement device to output announcementinformation that comprises a distinctive announcement, wherein theannouncement device is communicatively coupled to a remote communicationdevice; a connection computing apparatus to receive a connection requestincluding the announcement information and to establish a data sessionover a data network with the remote communication device based on theconnection request, the announcement information being associated withthe distinctive announcement; a processing computing apparatuscommunicatively coupled to the connection module and configured to mapthe announcement information to an alerting pattern based on at leastthe generated capabilities information; and a generating computingapparatus communicatively coupled to the connection module andconfigured to generate an alerting signal based on the alerting pattern.17. The system of claim 16, wherein the connection request comprises aSIP INVITE message having a Alert-info field, and wherein the Alert-infofield comprises the announcement information.
 18. The system of claim16, wherein the announcement information comprises a uniform resourceidentifier (URI) or a pattern number.
 19. The system of claim 16,wherein the announcement information identifies a multi-tonal frequencypattern, a vibration pattern, or a light-emission pattern.
 20. Thesystem of claim 16, wherein the alerting pattern differs from thedistinctive announcement.
 21. A system comprising: a server; and agateway device communicatively coupled to the server and to acommunication device, the gateway device comprising: a capabilitiesmodule to generate capabilities information that indicates one or morecapabilities of an announcement device to output announcementinformation that comprises a distinctive announcement, wherein theannouncement device is communicatively coupled to the communicationdevice; a connection module to receive a connection request includingthe announcement information and to establish a data session over a datanetwork with the communication device based on the connection request,the announcement information being associated with the distinctiveannouncement; a processing module communicatively coupled to theconnection module and configured to map the announcement information toan alerting pattern based on at least the generated capabilitiesinformation; and a generating module communicatively coupled to theprocessing module and configured to generate an alerting signal based onthe alerting pattern for the communication device.